#ifndef RUN_H
#define RUN_H

#include <map>
#include <vector>
#include <string>
#include "TString.h"
#include "TTree.h"
#include "base/Analysis.h"
#include "ConfigParser.h"
#include "base/EvtData.h"

class Run{
	
public:
Run();
~Run();
void ConfigureRun(std::string,std::string);
void Next(int i);
void ClearEvtdata();
void FillEvtData(int);
void ConfigureAnalyses();
void RunAnalyses();
void Finalize(TString);
std::vector<std::string> getCfgFileList();
std::map<std::string,Analysis*> getAnaMap();
int nevents;
std::string DataType;
std::string RunName;
bool doGRL;
std::string TreeName;
std::string rootfile;
private:
std::map<std::string,Analysis*> AnaMap;//cfg file<-->Analysis algorithm map
std::vector<std::string> CfgFileList;//list of cfg files used to configure analyses 

};

#endif
